from scapy.all import *

def wifi_sniff(packet):
    if packet.haslayer(Dot11):  # 检查是否为 Wi-Fi 数据包
        if packet.type == 0 and packet.subtype == 4:  # 仅捕获 Probe Request 数据包
            print(f"发现 Probe Request: {packet.addr2}")
            if not packet.info:
                print("  发现一个隐藏的网络")
            elif "WEP" in packet.capabilities:
                print("  发现一个使用 WEP 加密的网络")
            elif "WPA" in packet.capabilities:
                print("  发现一个使用 WPA 加密的网络")
            else:
                print("  发现一个未加密的网络")

def main():
    print("开始 Wi-Fi 嗅探...")
    sniff(iface="wlan0mon", prn=wifi_sniff)  # 使用 "wlan0mon" 接口嗅探 Wi-Fi 数据包

if __name__ == "__main__":
    main()
# pip install scapy
# sansjtw